worldcup 开发手记

利用leancloud内置方法skip()分段加载数据

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
//初始化相关配置
var i = 0
var goals = [];

function () {
//创建查询实例 (取得goals中所有数据)
var query = new AV.Query('goals');

//连表查询 通过goals表中的goal_game属性的属性值,去获取另外一张表中对应的单条数据
query.include('goal_game');

//将查询到的goals表中的数据依照createdAt属性倒序排列
query.descending("createdAt");

//需要跳过的数据条数计数器
i += 5;

//leancloud内置方法,skip(i) 表示在云端本次获取数据时,需要跳过i条数据
query.skip(i);

//获取跳过i条数据之后的本次获取的数据中的5条
query.limit(5);

query.find().then(function(result){

//将获取到的5条数据依次添加到预先定义的数组中
for (var j = 0; j < result.length; j++) {
goals.push(result[j].attributes);
}
return goals;

//将goals数组设置到小程序当前Page的data中
}).then(goals => this.setData({ goals })).catch(error => console.log(error));

}

附:微信小程序性能调优探索